package Model;


import java.io.File;
import java.util.Vector;

public class ScanDirectory {

	
	public ScanDirectory() {
	}

	/**
	 * Mithilfe dieser Methode wird das angegebene Verzeichnis (und die Unterverzeichnisse)
	 * nach .mp3 Dateien durchsucht.
	 * Die daraus entstehenden Pfade werden in einem Vector<String> abgespeichert.
	 * @param Der Pfad zum Verzeichnis, in dem nach .mp3-Dateien gesucht werden soll.
	 * @return Vector<String> Pfade der Musiktitel.
	 */
	public Vector<String> importTrack(String inputDirectString) {
		Vector<String> pathMusic = new Vector<String>();
		File dir = new File(inputDirectString);
		String[] names = dir.list();
		for (int i = 0; i < names.length; i++) {
			
			if (names[i].endsWith(".mp3")) {
				inputDirectString = inputDirectString.replace('\\', '/');
				pathMusic.addElement(inputDirectString + "/" + names[i]);
			}
			File underFile = new File(dir.getAbsolutePath(), names[i]);
			
			if (underFile.isDirectory()) {
				pathMusic.addAll(i, importTrack(underFile.getAbsolutePath().toString()));
			}
		}
		return pathMusic;
	}
	
	/**
	 * Mit dieser Methode wird das aktuelle Directory nach .xml-Dateien durchsucht.
	 * @return pathPlaylist(Vector<String>).
	 */
	public Vector<String> importPlaylist() {
		Vector<String> pathPlaylist = new Vector<String>();
		String inputDirectString = ".";
		File dir = new File(inputDirectString);
		String[] names = dir.list();
		for (int i = 0; i < names.length; i++) {
			if (names[i].endsWith(".xml")) {
				if(!names[i].equals("dataStorage.xml"))
					pathPlaylist.addElement(inputDirectString + "/" + names[i]);
			}
		}
		return pathPlaylist;
	}

}
